博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
dede 伪静态
阅读量:6272 次
发布时间:2019-06-22

本文共 2866 字,大约阅读时间需要 9 分钟。

hot3.png

DEDE虽然可以生成静态页面, 也可以重写成为伪静态. 在后台有设置可以开启伪静态. 开启后还要经过一定的设置才能使用.
1. 首先栏目和文章最好设置成动态浏览. 这样才不会生成静态html文件.
2. 设置重写规则. 在系统目录下加一个 .htaccess文件. 内容为:
RewriteEngine On
RewriteRule ^plus/list-([0-9]+)\.html$ /plus/list.php?tid=$1
RewriteRule ^plus/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3
RewriteRule ^plus/view-([0-9]+)-1\.html$ /plus/view.php?arcID=$1
RewriteRule ^plus/view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?aid=$1&pageno=$2
如果你的系统支持url重写,到这里就可以用伪静态访问了.
3.更改重写的URL.
如果用默认的设置, 访问的URL是:
这样的形色, 我们是可以更改这种样式的.
找到文件/include/helpers/channelunit.helper.php打开.
可以看到有这样的语句
return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
这就是文章的url形色.
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
这是列表的重写url.
可以使url更短一点,完成可以写成:
return "/view-".$aid.'-1.html';
$reurl = "/list-".$typeid.".html";
这时重写规则也要更新.
RewriteEngine On
RewriteRule ^list-([0-9]+)\.html$ /plus/list.php?tid=$1
RewriteRule ^list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3
RewriteRule ^view-([0-9]+)-1\.html$ /plus/view.php?arcID=$1
RewriteRule ^view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?aid=$1&pageno=$2
更进一步,还可以把view换成自己的任何词语,这也要把include/arc.archives.class.php文件中的view也一样替换。
发布选项: 生成HTML 仅动态浏览 发文章的时候选一下也不多事。为了以后升级 尽量减少修改文件。
以下这没有试,大家按需要测试吧~~
修改数据库
将所有文档设置为“仅动态”,可以进入数据库管理中,执行下面命令:
update dede_archives set ismake=-1
并将ismake的默认值设置为 -1即动态。
将所有栏目设置为“使用动态页”,可以进入数据库管理中,执行下面命令:

update dede_arctype set isdefault=-1

[但是列表页没法分页,下面介绍怎么分页]

打开/include/arc.listview.class.php页

大约在1106行左右

//获得上一页和下一页的链接        if($this->PageNo != 1)        {            //$prepage.="
  • 上一页
  • \r\n"; //$indexpage="
  • 首页
  • \r\n"; $prepage.="
  • 上一页
  • \r\n"; $indexpage="
  • 首页
  • \r\n"; } else { $indexpage="
  • 首页
  • \r\n"; } if($this->PageNo!=$totalpage && $totalpage>1) { // $nextpage.="
  • 下一页
  • \r\n"; // $endpage="
  • 末页
  • \r\n"; $nextpage.="
  • 下一页
  • \r\n"; $endpage="
  • 末页
  • \r\n"; } else { $endpage="
  • 末页
  • \r\n"; } //获得数字链接 $listdd=""; $total_list = $list_len * 2 + 1; if($this->PageNo >= $total_list) { $j = $this->PageNo-$list_len; $total_list = $this->PageNo+$list_len; if($total_list>$totalpage) { $total_list=$totalpage; } } else { $j=1; if($total_list>$totalpage) { $total_list=$totalpage; } } for($j;$j<=$total_list;$j++) { if($j==$this->PageNo) { $listdd.= "
  • $j
  • \r\n"; } else { // $listdd.="
  • ".$j."
  • \r\n"; $listdd.="
  • ".$j."
  • \r\n"; } }

    转载于:https://my.oschina.net/pureboys/blog/173865

    你可能感兴趣的文章
    定义内部类 继承 AsyncTask 来实现异步网络请求
    查看>>
    VC中怎么读取.txt文件
    查看>>
    如何清理mac系统垃圾
    查看>>
    企业中最佳虚拟机软件应用程序—Parallels Deskto
    查看>>
    Nginx配置文件详细说明
    查看>>
    怎么用Navicat Premium图标编辑器创建表
    查看>>
    Spring配置文件(2)配置方式
    查看>>
    MariaDB/Mysql 批量插入 批量更新
    查看>>
    ItelliJ IDEA开发工具使用—创建一个web项目
    查看>>
    solr-4.10.4部署到tomcat6
    查看>>
    切片键(Shard Keys)
    查看>>
    淘宝API-类目
    查看>>
    virtualbox 笔记
    查看>>
    Git 常用命令
    查看>>
    驰骋工作流引擎三种项目集成开发模式
    查看>>
    SUSE11修改主机名方法
    查看>>
    jdk6.0 + Tomcat6.0的简单jsp,Servlet,javabean的调试
    查看>>
    Android:apk签名
    查看>>
    2(2).选择排序_冒泡(双向循环链表)
    查看>>
    MySQL 索引 BST树、B树、B+树、B*树
    查看>>